package com.example.operator;

/**
 * 目标：理解三元运算符。
 */
public class OperatorDemo5 {
    public static void main(String[] args) {
        print(10, 40);
        print(59);
        System.out.println("较大值：" + getMax(10, 20, 30));
        System.out.println("较大值：" + getMax2(10, 20, 30));
    }

    public static void print(int a, int b) {
        // 如果a大于b，则max = a，否则max = b
        int max = a > b ? a : b;
        System.out.println("较大值：" + max);
    }

    // 需求：判断成绩是否通过或者挂科
    public static void print(int score) {
        String result = score >= 60 ? "通过" : "挂科";
        System.out.println(result);
    }

    // 需求：求三个整数的较大值返回。
    public static int getMax(int a, int b, int c) {
        // 1. 先求a和b的较大值 赋值给max
        int max = a > b ? a : b;
        // 2. 再和c比较，如果c较大，则max = c，否则max = max
        max = max > c ? max : c;
        return max;
    }

    public static int getMax2(int a, int b, int c) {
        // 三元运算符的嵌套
        int max = a > b ? (a > c ? a : c) : (b > c ? b : c);
        return max;
    }
}
